/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package actions;

/**
 *
 * @author Rodrigo
 */

import modelo.entidades.*; 
import modelo.dao.*; 
import org.apache.struts2.interceptor.SessionAware; 
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.dispatcher.SessionMap;
import javax.servlet.http.HttpServletRequest;
import java.util.*;

public class UsuarioAction extends ShowPageAction implements ServletRequestAware {
    
    private Usuario usuario; 
    private HttpServletRequest request;
    
    public void setServletRequest(HttpServletRequest request)
    {
        this.request = request; 
        
    }
       
    public void setUsuario(Usuario usuario)
    {
        this.usuario = usuario; 
    }
    
    public Usuario getUsuario()
    {
        return usuario; 
    }
    
    public String cadastro()
    {
        if(!isUserOnline())
            return LOGIN; 
        
        return SUCCESS; 
    }
    
    public String altera()
    {
        if(!isUserOnline())
            return LOGIN; 
        
        return SUCCESS; 
    }
    
    public String logar()
    {
        
     UsuarioDAO dao = new UsuarioDAO();
       
       Usuario user = dao.findByLogin(usuario.getLogin());

        
         if(user==null || !String.valueOf(usuario.getSenha().hashCode()).equals(user.getSenha()))
         {
             request.setAttribute("authentication",false); 
           
             return INPUT; 
         }
         
        session.put("usuario",user);
         
         return SUCCESS;
       
       
    }
    
    public String logout()
    {
        if(!this.isUserOnline())
            return LOGIN; 
        
        session.put("usuario",null);
        session.invalidate();
        
        return SUCCESS;
    }
}
